package cn.sc.summer.constant.rabbit;

/**
 * 接口：队列公用类
 *
 * @author a-xin
 * @date 2023/10/16 11:12
 */
public interface RabbitConstant {

    /**
     * 防止重复消费zSet集合key
     */
    String CONSUMER_KEY = "CONSUMER_KEY";

    /**
     * rabbit传输数据指定键
     */
    String MESSAGE_KEY = "message";

    /**
     * rabbit消息消费指定key
     */
    String CHECK_KEY = "randomKey";

    /**
     * rabbit消息日期key
     */
    String DATE_KEY = "dateTime";

    /**
     * 队列最大长度，
     */
    Integer QUEUE_MAX_LENGTH = 10000;

    /**
     * 消费者超时消费默认时间，
     */
    Integer TIME_OUT = 10 * 1000;

    /*---------------------------------------------deadExchange--------------------------------------------------------*/
    /**
     * 死信交换机绑定
     */
    String DEAD_EXCHANGE_BINDING = "cn.sc.summer.rabbit.dead.binding";
    /**
     * 死信交换机
     */
    String DEAD_EXCHANGE = "cn.sc.summer.rabbit.dead.exchange";
    /**
     * 死信队列
     */
    String DEAD_QUEUE = "cn.sc.summer.rabbit.dead.queue";
    /**
     * 死信路由key
     */
    String DEAD_EXCHANGE_ROUTING_KEY = "cn.sc.summer.rabbit.dead.routing.key";
    /*---------------------------------------------deadExchange--------------------------------------------------------*/

    /*---------------------------------------------logAspect--------------------------------------------------------*/
    /**
     * 消费者超时消费默认时间，
     */
    Integer LOG_RECORD_TIME_OUT = TIME_OUT;
    /**
     * 日志队列绑定
     */
    String LOG_RECORD_BINDING = "cn.sc.summer.apiLog.binding";
    /**
     * 日志队列
     */
    String LOG_RECORD_QUEUE = "cn.sc.summer.apiLog.queue";
    /**
     * 日志队列交换机
     */
    String LOG_RECORD_EXCHANGE = "cn.sc.summer.apiLog.exchange";
    /**
     * 日志队列交换机routingKey
     */
    String LOG_RECORD_ROUTING_KEY = "cn.sc.summer.apiLog.code";
    /*---------------------------------------------logAspect--------------------------------------------------------*/


    /*---------------------------------------------error--------------------------------------------------------*/
    /**
     * 消费者超时消费默认时间，
     */
    Integer ERROR_RECORD_TIME_OUT = TIME_OUT;
    /**
     * 消费异常队列绑定
     */
    String ERROR_RECORD_BINDING = "cn.sc.summer.error.binding";
    /**
     * 消费异常队列
     */
    String ERROR_RECORD_QUEUE = "cn.sc.summer.error.queue";
    /**
     * 消费异常队列交换机
     */
    String ERROR_RECORD_EXCHANGE = "cn.sc.summer.error.exchange";
    /**
     * 消费异常队列交换机routingKey
     */
    String ERROR_RECORD_ROUTING_KEY = "cn.sc.summer.error.code";
    /*---------------------------------------------error--------------------------------------------------------*/


    /*---------------------------------------------sqlLog--------------------------------------------------------*/
    /**
     * 消费者超时消费默认时间，
     */
    Integer SQL_RECORD_TIME_OUT = TIME_OUT;
    /**
     * sql记录队列
     */
    String SQL_RECORD_QUEUE = "cn.sc.summer.sql.queue";
    /**
     * sql记录交换机
     */
    String SQL_RECORD_EXCHANGE = "cn.sc.summer.sql.exchange";
    /**
     * sql记录绑定
     */
    String SQL_RECORD_BINDING = "cn.sc.summer.sql.binding";
    /**
     * sql记录路由key
     */
    String SQL_RECORD_ROUTING_KEY = "cn.sc.summer.sql.code";
    /*---------------------------------------------sqlLog--------------------------------------------------------*/


    /*---------------------------------------------smsLog--------------------------------------------------------*/
    /**
     * 消费者超时消费默认时间，
     */
    Integer SMS_RECORD_TIME_OUT = TIME_OUT;
    /**
     * 短信记录队列
     */
    String SMS_RECORD_QUEUE = "cn.sc.summer.sms.queue";
    /**
     * 短信记录交换机
     */
    String SMS_RECORD_EXCHANGE = "cn.sc.summer.sms.exchange";
    /**
     * 短信记录绑定
     */
    String SMS_RECORD_BINDING = "cn.sc.summer.sms.binding";
    /**
     * 短信记录路由key
     */
    String SMS_RECORD_ROUTING_KEY = "cn.sc.summer.sms.code";


    /**
     * 消费者超时消费默认时间，
     */
    Integer SMS_ERROR_RECORD_TIME_OUT = TIME_OUT;
    /**
     * 短信记录队列
     */
    String SMS_ERROR_RECORD_QUEUE = "cn.sc.summer.sms.error.queue";
    /**
     * 短信记录交换机
     */
    String SMS_ERROR_RECORD_EXCHANGE = "cn.sc.summer.sms.error.exchange";
    /**
     * 短信告警记录绑定
     */
    String SMS_ERROR_RECORD_BINDING = "cn.sc.summer.sms.error.binding";
    /**
     * 短信记录路由key
     */
    String SMS_ERROR_RECORD_ROUTING_KEY = "cn.sc.summer.sms.error.code";
    /*---------------------------------------------smsLog--------------------------------------------------------*/


    /*---------------------------------------------loginError--------------------------------------------------------*/
    /**
     * 消费者超时消费默认时间，
     */
    Integer LOGIN_RECORD_TIME_OUT = TIME_OUT;
    /**
     * 登录异常队列
     */
    String LOGIN_RECORD_QUEUE = "cn.sc.summer.login.queue";
    /**
     * 登录异常交换机
     */
    String LOGIN_RECORD_EXCHANGE = "cn.sc.summer.login.exchange";
    /**
     * 登录异常绑定
     */
    String LOGIN_RECORD_BINDING = "cn.sc.summer.login.binding";
    /**
     * 登录异常路由key
     */
    String LOGIN_RECORD_ROUTING_KEY = "cn.sc.summer.login.code";
    /*---------------------------------------------loginError--------------------------------------------------------*/

    /*---------------------------------------------systemInfo--------------------------------------------------------*/
    /**
     * 消费者超时消费默认时间，
     */
    Integer SERVER_SYSTEM_INFO_TIME_OUT = TIME_OUT;
    /**
     * 服务所在系统信息队列
     */
    String SERVER_SYSTEM_INFO_QUEUE = "cn.sc.summer.server.system.info.queue";
    /**
     * 服务所在系统信息交换机
     */
    String SERVER_SYSTEM_INFO_EXCHANGE = "cn.sc.summer.server.system.info.exchange";
    /**
     * 服务所在系统信息绑定
     */
    String SERVER_SYSTEM_INFO_BINDING = "cn.sc.summer.server.system.info.binding";
    /**
     * 服务所在系统信息路由key
     */
    String SERVER_SYSTEM_INFO_ROUTING_KEY = "cn.sc.summer.server.system.info.code";
    /*---------------------------------------------systemInfo--------------------------------------------------------*/

    /*---------------------------------------------gatewayLog--------------------------------------------------------*/
    /**
     * 消费者超时消费默认时间，
     */
    Integer GATEWAY_LOG_TIME_OUT = TIME_OUT;
    /**
     * 网关访问日志信息队列
     */
    String GATEWAY_LOG_QUEUE = "cn.sc.summer.gateway.log.queue";
    /**
     * 网关访问日志信息交换机
     */
    String GATEWAY_LOG_EXCHANGE = "cn.sc.summer.gateway.log.exchange";
    /**
     * 网关访问日志信息绑定
     */
    String GATEWAY_LOG_BINDING = "cn.sc.summer.gateway.log.binding";
    /**
     * 网关访问日志信息路由key
     */
    String GATEWAY_LOG_ROUTING_KEY = "cn.sc.summer.gateway.log.code";
    /*---------------------------------------------gatewayLog--------------------------------------------------------*/

    /*---------------------------------------------gatewayInstance--------------------------------------------------------*/
    /**
     * 消费者超时消费默认时间，
     */
    Integer GATEWAY_INSTANCE_TIME_OUT = TIME_OUT;
    /**
     * 网关server实例刷新信息队列
     */
    String GATEWAY_INSTANCE_QUEUE = "cn.sc.summer.gateway.instance.queue";
    /**
     * 网关feign实例刷新信息队列
     */
    String GATEWAY_INSTANCE_QUEUE_FEIGN = "cn.sc.summer.gateway.instance.queue.feign";
    /**
     * 网关实例刷新信息交换机
     */
    String GATEWAY_INSTANCE_EXCHANGE = "cn.sc.summer.gateway.instance.exchange";
    /**
     * 网关实例刷新信息绑定
     */
    String GATEWAY_INSTANCE_BINDING = "cn.sc.summer.gateway.instance.binding";
    /**
     * 网关实例刷新信息绑定
     */
    String GATEWAY_INSTANCE_BINDING_FEIGN = "cn.sc.summer.gateway.instance.binding";
    /**
     * 网关实例刷新信息路由key
     */
    String GATEWAY_INSTANCE_ROUTING_KEY = "cn.sc.summer.gateway.instance.code";
    /*---------------------------------------------gatewayInstance--------------------------------------------------------*/

    /*---------------------------------------------emailSend--------------------------------------------------------*/
    /**
     * 消费者超时消费默认时间，
     */
    Integer EMAIL_SEND_TIME_OUT = TIME_OUT;
    /**
     * 邮件发送队列
     */
    String EMAIL_SEND_QUEUE = "cn.sc.summer.email.queue";
    /**
     * 邮件发送交换机
     */
    String EMAIL_SEND_EXCHANGE = "cn.sc.summer.email.exchange";
    /**
     * 邮件发送绑定
     */
    String EMAIL_SEND_BINDING = "cn.sc.summer.email.binding";
    /**
     * 邮件发送路由key
     */
    String EMAIL_SEND_ROUTING_KEY = "cn.sc.summer.email.code";
    /*---------------------------------------------emailSend--------------------------------------------------------*/

}
